package br.com.pauloamorim.modelo;

import java.io.Serializable;
import java.lang.String;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.persistence.*;

/**
 * Entity implementation class for Entity: Usuario
 *
 */
@Entity
public class Usuario implements Serializable {
	
	private static final long serialVersionUID = 1L;
	
	@Id
	private String cpf;
	
	@Column
	private String nome;   
	
	@Temporal(TemporalType.DATE)
	@Column
	private Date dataNascimento;
	
	@ManyToOne
	@JoinColumn(name="ID_ENDERECO")
	private Endereco endereco;
	
	@OneToMany(mappedBy="chavePrimaria.usuario", cascade=CascadeType.ALL, fetch=FetchType.LAZY)
	private List<Emprestimo> emprestimos = new ArrayList<Emprestimo>();

	public Usuario() {
		super();
	}   
	public String getNome() {
		return this.nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}   
	public String getCpf() {
		return this.cpf;
	}

	public void setCpf(String cpf) {
		this.cpf = cpf;
	}   
	public Date getDataNascimento() {
		return this.dataNascimento;
	}

	public void setDataNascimento(Date dataNascimento) {
		this.dataNascimento = dataNascimento;
	}
	public Endereco getEndereco() {
		return endereco;
	}
	public void setEndereco(Endereco endereco) {
		this.endereco = endereco;
	}
   
}
